#include "Bullet3Collision/NarrowPhaseCollision/shared/b3Contact4Data.h"
#ifdef __cplusplus
extern "C" {
#endif
b3Contact4Data* bullet_Newb3Contact4Data(){
	b3Contact4Data* wrap_out = new b3Contact4Data();
	return wrap_out;
}

int bullet_b3Contact4Data_GetFieldOfM_batchIdx(b3Contact4Data* c_this){
	return (int)(c_this->m_batchIdx);
}

int bullet_b3Contact4Data_GetFieldOfM_bodyAPtrAndSignBit(b3Contact4Data* c_this){
	return (int)(c_this->m_bodyAPtrAndSignBit);
}

int bullet_b3Contact4Data_GetFieldOfM_bodyBPtrAndSignBit(b3Contact4Data* c_this){
	return (int)(c_this->m_bodyBPtrAndSignBit);
}

int bullet_b3Contact4Data_GetFieldOfM_childIndexA(b3Contact4Data* c_this){
	return (int)(c_this->m_childIndexA);
}

int bullet_b3Contact4Data_GetFieldOfM_childIndexB(b3Contact4Data* c_this){
	return (int)(c_this->m_childIndexB);
}

unsigned short bullet_b3Contact4Data_GetFieldOfM_frictionCoeffCmp(b3Contact4Data* c_this){
	return (unsigned short)(c_this->m_frictionCoeffCmp);
}

unsigned short bullet_b3Contact4Data_GetFieldOfM_restituitionCoeffCmp(b3Contact4Data* c_this){
	return (unsigned short)(c_this->m_restituitionCoeffCmp);
}

int bullet_b3Contact4Data_GetFieldOfM_unused1(b3Contact4Data* c_this){
	return (int)(c_this->m_unused1);
}

int bullet_b3Contact4Data_GetFieldOfM_unused2(b3Contact4Data* c_this){
	return (int)(c_this->m_unused2);
}

b3Vector3* bullet_b3Contact4Data_GetFieldOfM_worldNormalOnB(b3Contact4Data* c_this){
	return (b3Vector3*)(&c_this->m_worldNormalOnB);
}

b3Vector3** bullet_b3Contact4Data_GetFieldOfM_worldPosB(b3Contact4Data* c_this){
	return (b3Vector3**)(&c_this->m_worldPosB);
}

#ifdef __cplusplus
}
#endif
